package com.bookocean.controller.dto;

import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.math.BigDecimal;

/**
 * 书籍 DTO
 * 
 * @author BookOcean
 * @since 2024-01-01
 */
@Data
public class BookDto {

    /**
     * 书籍ID
     */
    private Long bookId;

    /**
     * 书籍标题
     */
    private String title;

    /**
     * 书籍作者
     */
    private String author;

    /**
     * 书籍封面URL
     */
    private String coverUrl;

    /**
     * 书籍添加人
     */
    private Long createdUserId;

    /**
     * 书籍分类
     */
    private String category;

    /**
     * 书籍总点赞数
     */
    private Integer totalLikeCount;

    /**
     * 书籍总评论数
     */
    private Integer totalCommentCount;

    /**
     * 书籍总收藏数
     */
    private Integer totalFavoriteCount;

    /**
     * 书籍总书摘数
     */
    private Integer totalQuoteCount;

    /**
     * 当前用户是否点赞过该书籍的任一书摘
     */
    private Boolean isLikedByCurrentUser;

    /**
     * 当前用户是否收藏过该书籍的任一书摘
     */
    private Boolean isFavoritedByCurrentUser;

}
